Mercury Lamp

ACM 杂题训练

感觉打 ACM 这个东西还是需要保持手感,毕竟我们想要牌子只需要手速够快罚时够少就行了。

随便做点简单题。

CF1352G - Special Permutation

看到 $2$ 的 diff 第一时间是直接考虑奇偶分开然后放一起。

于是我们发现中间衔接部分需要做点处理。

只需要交换两个就行了,应该算是签到。

CF2155D - Batteries

这个交互和之前 23 杭州的那个链和菊花的题思想有点像。

大部分都要用鸽巢原理或者说最坏情况来考虑上界,就会发现需要的次数并没有实际那么多。

围成一个环,考虑任意两个好灯之间的距离,最大不会超过 $d = \lceil\dfrac{n}{a}\rceil$。

如果 $a$ 比较小,我们从距离更大的点对开始询问可能会在问到之前就用尽次数。

所以我们从距离比较小的点对开始枚举,最坏情况下我们枚举到 $d$ 的时候就一定能找到。

所以次数就是 $\sum\limits_{i = 1}^{d}(n - i) = nd - \dfrac{d(d + 1)}{2}$。

$nd = \lceil\dfrac{n}{a}\rceil$,所以显然可以做到。